Providing an efficient absorbing layer/boundary condition for numerical simulation involving radiation in an infinite or semi-infinite medium has always been a recurring issue to be solved in the field of simulation. Solutions to this issue are known as non-reflective boundary conditions (NRBC). A perfectly matched layer (PML) is one of the NRBC techniques currently used, and is quite extensively used in modeling wave propagation.
A PML may be a special physical domain (e.g., an absorbing layer) surrounding a near-field computational domain. The PML may be implemented in various computer-aided design (CAD) simulations as a NRBC for different wave expressions such as, but not limited to, sound waves (acoustics), elastic waves, or electromagnetic waves. In particular, the PML may be used for volume partition approaches such as finite elements, finite volumes, finite differences, and the like to approximate an infinite or semi-infinite wave propagation domain.
Multiple barriers in implementing PML include limiting the amount of additional degrees of freedom, limiting choice for selecting stretching directions, difficult automatic definition, and the like. Typically PML is an efficient method (in terms of CPU cost and memory for a given accuracy of the near field) when the PML includes few computational degrees of freedom. Few computational degrees of freedom may refer to, for example, few nodes in a finite difference or finite element context. PML coordinate-stretching may be limited to constant stretching aligned with a coordinate axis. The limited coordinate-stretching may limit shapes associated with boundary conditions to boxes (cartesian coordinates), cylinders (cylindrical coordinates), or spheres (spherical coordinates). Therefore, a large number of parameters and geometry of the boundary conditions must be defined for PML, rendering it un-user-friendly and complicated to implement. This also detracts from PML's efficiency, because regular shapes often have to be large to surround irregular radiating bodies, increasing the total number of degrees of freedom required.